package com.ruoyi.system.domain;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 资产售后维护详细信息对象 asms_asset_full_info
 * 
 * @author yfkj
 * @date 2021-10-28
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class AsmsAssetFullInfo extends com.ruoyi.common.core.web.domain.BaseEntity
{
    private static final long serialVersionUID = 1L;
    /** $column.columnComment */
    @TableField(exist = true)
    @TableId(type= IdType.AUTO)
    @ApiModelProperty(value =  "${comment}")
    private Long id;
    /** 维护方维护资产信息主键 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方维护资产信息主键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方维护资产信息主键")
    private Long maintenanceAssetId;
    /** 负责维护该资产的维护公司 */
    @com.ruoyi.common.core.annotation.Excel(name = "负责维护该资产的维护公司")
    @TableField(exist = true)
    @ApiModelProperty(value =  "负责维护该资产的维护公司")
    private Long maintenanceDeptId;
    /** 资产 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产")
    private Long assetId;
    /** 开始维护时间 */
    @com.ruoyi.common.core.annotation.Excel(name = "开始维护时间")
    @TableField(exist = true)
    @ApiModelProperty(value =  "开始维护时间")
    private Long startUseTime;
    /** 截止维护时间 */
    @com.ruoyi.common.core.annotation.Excel(name = "截止维护时间")
    @TableField(exist = true)
    @ApiModelProperty(value =  "截止维护时间")
    private Long endUseTime;
    /** 是否删除(0删除，1正常) */
    @com.ruoyi.common.core.annotation.Excel(name = "是否删除(0删除，1正常)")
    @TableField(exist = true)
    @ApiModelProperty(value =  "是否删除(0删除，1正常)")
    private Integer isDelete;
    /** 可能的附件信息 */
    @com.ruoyi.common.core.annotation.Excel(name = "可能的附件信息")
    @TableField(exist = true)
    @ApiModelProperty(value =  "可能的附件信息")
    private String attachments;
    /** 维护方父部门id */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方父部门id")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方父部门id")
    private Long mParentId;
    /** 维护方祖级信息 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方祖级信息")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方祖级信息")
    private String mAncestors;
    /** 维护方名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方名称")
    private String mDeptShortName;
    /** 维护方全称 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方全称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方全称")
    private String mDeptFullName;
    /** 维护方负责人 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方负责人")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方负责人")
    private String mLeader;
    /** 维护方联系方式 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方联系方式")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方联系方式")
    private String mPhone;
    /** 维护方邮箱 */
    @com.ruoyi.common.core.annotation.Excel(name = "维护方邮箱")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维护方邮箱")
    private String mEmail;
    /** 使用方父部门id */
    @com.ruoyi.common.core.annotation.Excel(name = "使用方父部门id")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用方父部门id")
    private Long uParentId;
    /** 使用方祖级信息 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用方祖级信息")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用方祖级信息")
    private String uAncestors;
    /** 使用方名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用方名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用方名称")
    private String uDeptShortName;
    /** 使用方全称 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用方全称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用方全称")
    private String uDeptFullName;
    /** 使用人负责人 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用人负责人")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用人负责人")
    private String uLeader;
    /** 使用方联系电话 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用方联系电话")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用方联系电话")
    private String uPhone;
    /** 使用方手机 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用方手机")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用方手机")
    private String uEmail;
    /** 使用者用户账号 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用者用户账号")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用者用户账号")
    private String userName;
    /** 使用者用户昵称 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用者用户昵称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用者用户昵称")
    private String nickName;
    /** 使用者手机号码 */
    @com.ruoyi.common.core.annotation.Excel(name = "使用者手机号码")
    @TableField(exist = true)
    @ApiModelProperty(value =  "使用者手机号码")
    private String phonenumber;
    /** 微信openId */
    @com.ruoyi.common.core.annotation.Excel(name = "微信openId")
    @TableField(exist = true)
    @ApiModelProperty(value =  "微信openId")
    private String wxOpenId;
    /** 资产所属组织部门 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产所属组织部门")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产所属组织部门")
    private Long ownDeptId;
    /** 资产使用组织部门 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产使用组织部门")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产使用组织部门")
    private Long useDeptId;
    /** 资产位置 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产位置")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产位置")
    private Long addressId;
    /** 资产标签 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产标签")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产标签")
    private Long tagId;
    /** 资产实际使用人 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产实际使用人")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产实际使用人")
    private Long userId;
    /** 来源(1购入，2自建，3租赁，4捐赠、5内部购入、6盘盈、7其他) */
    @com.ruoyi.common.core.annotation.Excel(name = "来源")
    @TableField(exist = true)
    @ApiModelProperty(value =  "来源(1购入，2自建，3租赁，4捐赠、5内部购入、6盘盈、7其他)")
    private String assetSource;
    /** 金额*/
    @com.ruoyi.common.core.annotation.Excel(name = "金额")
    @TableField(exist = true)
    @ApiModelProperty(value =  "金额")
    private Long assetAmount;
    /** 资产状态(1在用，2闲置，3借用，4报废，5调拨中，6维修中) */
    @com.ruoyi.common.core.annotation.Excel(name = "资产状态(1在用，2闲置，3借用，4报废，5调拨中，6维修中)")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产状态(1在用，2闲置，3借用，4报废，5调拨中，6维修中)")
    private String assetStatus;
    /** 资产标准型号 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产标准型号")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产标准型号")
    private Long assetTemplateId;
    /** 资产系统编码 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产系统编码")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产系统编码")
    private String assetCode;
    /** 资产自有编码 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产自有编码")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产自有编码")
    private String sn;
    /** 图片 */
    @com.ruoyi.common.core.annotation.Excel(name = "图片")
    @TableField(exist = true)
    @ApiModelProperty(value =  "图片")
    private String assetImage;
    /** 资产品牌 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产品牌")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产品牌")
    private Long brandId;
    /** 资产所属批次 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产所属批次")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产所属批次")
    private Long projectId;
    /** 品牌名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "品牌名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "品牌名称")
    private String brandName;
    /** 官方联系方式 */
    @com.ruoyi.common.core.annotation.Excel(name = "官方联系方式")
    @TableField(exist = true)
    @ApiModelProperty(value =  "官方联系方式")
    private String brandTelephone;
    /** 批次名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "批次名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "批次名称")
    private String projectName;
    /** 描述 */
    @com.ruoyi.common.core.annotation.Excel(name = "描述")
    @TableField(exist = true)
    @ApiModelProperty(value =  "描述")
    private String projectDescription;
    /** 资产型号名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产型号名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产型号名称")
    private String assetTemplateName;
    /** 资产类型外键 */
    @com.ruoyi.common.core.annotation.Excel(name = "资产类型外键")
    @TableField(exist = true)
    @ApiModelProperty(value =  "资产类型外键")
    private Long assetTypeId;
    /** 规格标准 */
    @com.ruoyi.common.core.annotation.Excel(name = "规格标准")
    @TableField(exist = true)
    @ApiModelProperty(value =  "规格标准")
    private String specification;
    /** 计量单位 */
    @com.ruoyi.common.core.annotation.Excel(name = "计量单位")
    @TableField(exist = true)
    @ApiModelProperty(value =  "计量单位")
    private String measureUnit;
    /** 父id */
    @com.ruoyi.common.core.annotation.Excel(name = "父id")
    @TableField(exist = true)
    @ApiModelProperty(value =  "父id")
    private Long typeParentId;
    /** 祖级列表 */
    @com.ruoyi.common.core.annotation.Excel(name = "祖级列表")
    @TableField(exist = true)
    @ApiModelProperty(value =  "祖级列表")
    private String assetTypeAncestors;
    /** 类型名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "类型名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "类型名称")
    private String assetTypeName;
    /** 类型编码 */
    @com.ruoyi.common.core.annotation.Excel(name = "类型编码")
    @TableField(exist = true)
    @ApiModelProperty(value =  "类型编码")
    private String assetTypeCode;
    /** 父地址id */
    @com.ruoyi.common.core.annotation.Excel(name = "父地址id")
    @TableField(exist = true)
    @ApiModelProperty(value =  "父地址id")
    private Long addressParentId;
    /** 祖级列表 */
    @com.ruoyi.common.core.annotation.Excel(name = "祖级列表")
    @TableField(exist = true)
    @ApiModelProperty(value =  "祖级列表")
    private String addressAncestors;
    /** 位置名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "位置名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "位置名称")
    private String addressName;
    /** 完整名称 */
    @com.ruoyi.common.core.annotation.Excel(name = "完整名称")
    @TableField(exist = true)
    @ApiModelProperty(value =  "完整名称")
    private String addressFullName;
    /** 经度 */
    @com.ruoyi.common.core.annotation.Excel(name = "经度")
    @TableField(exist = true)
    @ApiModelProperty(value =  "经度")
    private String longitude;
    /** 维度 */
    @com.ruoyi.common.core.annotation.Excel(name = "维度")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维度")
    private String latitude;
    /** $column.columnComment */
    @com.ruoyi.common.core.annotation.Excel(name = "维度")
    @TableField(exist = true)
    @ApiModelProperty(value =  "维度")
    private Integer assetInfoIsDelete;

    @TableField(exist = true)
    @ApiModelProperty(value =  "绑定者")
    private Long bindUserId;
    @TableField(exist = true)
    @ApiModelProperty(value =  "绑定者")
    private String bindUserName;
    @ApiModelProperty(value =  "资产所有者部门")
    private String ownDeptName;
    @ApiModelProperty(value =  "绑定时间")
    private Long bindTime;

    public static final String ID="id";
    public static final String MAINTENANCE_ASSET_ID="maintenance_asset_id";
    public static final String MAINTENANCE_DEPT_ID="maintenance_dept_id";
    public static final String ASSET_ID="asset_id";
    public static final String START_USE_TIME="start_use_time";
    public static final String END_USE_TIME="end_use_time";
    public static final String IS_DELETE="is_delete";
    public static final String ATTACHMENTS="attachments";
    public static final String CREATE_BY="create_by";
    public static final String CREATE_TIME="create_time";
    public static final String UPDATE_BY="update_by";
    public static final String UPDATE_TIME="update_time";
    public static final String REMARK="remark";
    public static final String M_PARENT_ID="m_parent_id";
    public static final String M_ANCESTORS="m_ancestors";
    public static final String M_DEPT_SHORT_NAME="m_dept_short_name";
    public static final String M_DEPT_FULL_NAME="m_dept_full_name";
    public static final String M_LEADER="m_leader";
    public static final String M_PHONE="m_phone";
    public static final String M_EMAIL="m_email";
    public static final String U_PARENT_ID="u_parent_id";
    public static final String U_ANCESTORS="u_ancestors";
    public static final String U_DEPT_SHORT_NAME="u_dept_short_name";
    public static final String U_DEPT_FULL_NAME="u_dept_full_name";
    public static final String U_LEADER="u_leader";
    public static final String U_PHONE="u_phone";
    public static final String U_EMAIL="u_email";
    public static final String USER_NAME="user_name";
    public static final String NICK_NAME="nick_name";
    public static final String PHONENUMBER="phonenumber";
    public static final String WX_OPEN_ID="wx_open_id";
    public static final String OWN_DEPT_ID="own_dept_id";
    public static final String OWN_DEPT_NAME="own_dept_name";
    public static final String USE_DEPT_ID="use_dept_id";
    public static final String ADDRESS_ID="address_id";
    public static final String TAG_ID="tag_id";
    public static final String USER_ID="user_id";
    public static final String ASSET_SOURCE="asset_source";
    public static final String ASSET_AMOUNT="asset_amount";
    public static final String ASSET_STATUS="asset_status";
    public static final String ASSET_TEMPLATE_ID="asset_template_id";
    public static final String ASSET_CODE="asset_code";
    public static final String SN="sn";
    public static final String ASSET_IMAGE="asset_image";
    public static final String BRAND_ID="brand_id";
    public static final String PROJECT_ID="project_id";
    public static final String BRAND_NAME="brand_name";
    public static final String BRAND_TELEPHONE="brand_telephone";
    public static final String PROJECT_NAME="project_name";
    public static final String PROJECT_DESCRIPTION="project_description";
    public static final String ASSET_TEMPLATE_NAME="asset_template_name";
    public static final String ASSET_TYPE_ID="asset_type_id";
    public static final String SPECIFICATION="specification";
    public static final String MEASURE_UNIT="measure_unit";
    public static final String TYPE_PARENT_ID="type_parent_id";
    public static final String ASSET_TYPE_ANCESTORS="asset_type_ancestors";
    public static final String ASSET_TYPE_NAME="asset_type_name";
    public static final String ASSET_TYPE_CODE="asset_type_code";
    public static final String ADDRESS_PARENT_ID="address_parent_id";
    public static final String ADDRESS_ANCESTORS="address_ancestors";
    public static final String ADDRESS_NAME="address_name";
    public static final String ADDRESS_FULL_NAME="address_full_name";
    public static final String LONGITUDE="longitude";
    public static final String LATITUDE="latitude";
    public static final String ASSET_INFO_IS_DELETE="asset_info_is_delete";
    public static final String BIND_USER_ID="bind_user_id";
    public static final String BIND_USER_NAME="bind_user_name";
    public static final String BIND_TIME="bind_time";

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("maintenanceAssetId", getMaintenanceAssetId())
            .append("maintenanceDeptId", getMaintenanceDeptId())
            .append("assetId", getAssetId())
            .append("startUseTime", getStartUseTime())
            .append("endUseTime", getEndUseTime())
            .append("isDelete", getIsDelete())
            .append("attachments", getAttachments())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("userName", getUserName())
            .append("nickName", getNickName())
            .append("phonenumber", getPhonenumber())
            .append("wxOpenId", getWxOpenId())
            .append("ownDeptId", getOwnDeptId())
            .append("useDeptId", getUseDeptId())
            .append("addressId", getAddressId())
            .append("tagId", getTagId())
            .append("userId", getUserId())
            .append("assetStatus", getAssetStatus())
            .append("assetTemplateId", getAssetTemplateId())
            .append("assetCode", getAssetCode())
            .append("sn", getSn())
            .append("assetImage", getAssetImage())
            .append("brandId", getBrandId())
            .append("projectId", getProjectId())
            .append("brandName", getBrandName())
            .append("brandTelephone", getBrandTelephone())
            .append("projectName", getProjectName())
            .append("projectDescription", getProjectDescription())
            .append("assetTemplateName", getAssetTemplateName())
            .append("assetTypeId", getAssetTypeId())
            .append("specification", getSpecification())
            .append("measureUnit", getMeasureUnit())
            .append("typeParentId", getTypeParentId())
            .append("assetTypeAncestors", getAssetTypeAncestors())
            .append("assetTypeName", getAssetTypeName())
            .append("assetTypeCode", getAssetTypeCode())
            .append("addressParentId", getAddressParentId())
            .append("addressAncestors", getAddressAncestors())
            .append("addressName", getAddressName())
            .append("addressFullName", getAddressFullName())
            .append("longitude", getLongitude())
            .append("latitude", getLatitude())
            .append("assetInfoIsDelete", getAssetInfoIsDelete())
            .toString();
    }
}
